package com.example.mymvp2.presenter;


import android.app.Activity;
import android.util.Log;

import com.example.mymvp2.BaseViewListener;

import java.util.Map;

abstract public class BasePresenter<T> {
    //数据请求参数
    protected int[] mParams;

    public BasePresenter requestParams(int... args){
        this.mParams = args;
        return this;
    }

    // 添加Callback并执行数据请求
    // 具体的数据请求由子类实现
    public abstract void execute(BaseViewListener<T> callback);

//    public abstract  void setToken(Activity activity);

    // 执行Get网络请求，此类看需求由自己选择写与不写
      public abstract void requestGetAPI(String url,BaseViewListener<T> callback);
        //这里写具体的网络请求


    // 执行Post网络请求，此类看需求由自己选择写与不写
    protected void requestPostAPI(String url, Map params, BaseViewListener<T> callback){
        //这里写具体的网络请求
    }


}
